package modelo;
import bean.Conexion;

import java.awt.Image;
import java.io.File;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;


public class ProveedorDAO  extends ConexionDao{
	
	private static final ArrayList<Venta> Cliente = null;


	public ProveedorDAO() {
		super();	
	
	}	
	

	/*String id_prove, String nombre_prove,
			String apellido_prove, String telefono_prove, String correo_prove,
			String rif_prove, String status_prove*/

	public void registrarProveedor(Proveedor proveedor) {
		String tiraSQL = "INSERT INTO proveedor "+
		 				 "(id_prove, nombre_prove, telefono_prove, correo_prove, status_prove) "+
		 				 "VALUES ('"+proveedor.getId_prove()+"','"+ proveedor.getNombre_prove()+
		 				 "','" + proveedor.getTelefono_prove()+ "','"+ proveedor.getCorreo_prove() +
		 				 "','"+ proveedor.getStatus_prove() + "')";
		
		Conexion.ejecutar(tiraSQL);
	}
	
	
	public ArrayList<Proveedor> consultarClientes() {
		ArrayList<Proveedor> proveedores = new ArrayList<Proveedor>();
		String tiraSQL = "SELECT * FROM proveedor";
		ResultSet resultSet = Conexion.consultar(tiraSQL);		
		try {
			while (resultSet.next()) {
				
				String id = resultSet.getString("id_prove");
				String nombre = resultSet.getString("nombre_prove");
				String tlf = resultSet.getString("telefono_prove");
				String correo = resultSet.getString("correo_prove");
				String status = resultSet.getString("status_prove");
				
				Proveedor proveedor= new Proveedor(id, nombre, tlf, correo, status);
				proveedores.add(proveedor);
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return proveedores;
	}
	
	public Proveedor consultarProveedorPorID(String ids) {
		
		Proveedor proveedor= null;
		
		String tiraSQL = "SELECT * FROM proveedor where id_prove ='"+ ids + "'";
		ResultSet resultSet = Conexion.consultar(tiraSQL);	
		
		try {
			while (resultSet.next()) {
				
				String id = resultSet.getString("id_prove");
				String nombre = resultSet.getString("nombre_prove");
				String tlf = resultSet.getString("telefono_prove");
				String correo = resultSet.getString("correo_prove");
				String status = resultSet.getString("status_prove");
				
				 proveedor= new Proveedor(id, nombre, tlf, correo, status);
				
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return proveedor;			
}

	
	// Modificar
	public void modificarProveedor(Proveedor proveedor) {
		
		String tiraSQL = "UPDATE proveedor SET id_prove = '" + proveedor.getId_prove() + "', nombre_prove = '"+ proveedor.getNombre_prove()+		 
				"', telefono_prove = '" + proveedor.getTelefono_prove() + "', correo_prove = '" + proveedor.getCorreo_prove() +
				"', status_prove = '" + proveedor.getStatus_prove()+ " WHERE id_prove ='" + proveedor.getId_prove() + "'";
				
		Conexion.ejecutar(tiraSQL);
	}
	
	
	// Eliminacion Fisica
		public void eliminarFisicaProveedor(String id) {
			String tiraSQL =  "DELETE FROM proveedor WHERE id_prove = '"+ id + "'";
									
			Conexion.ejecutar(tiraSQL);
		}

		

		// Eliminacion Logica
		public void eliminarLogicaCliente(Proveedor proveedor) {
			//Estatus cuando se elimina es "inactivo"?
			
			String tiraSQL = "UPDATE proveedor SET id_prove = '" + proveedor.getId_prove() + "', nombre_prove = '"+ proveedor.getNombre_prove() +		 
					"', telefono_prove = '" + proveedor.getTelefono_prove()+ "', correo_prove = '" + proveedor.getCorreo_prove() +
					"', status_prove = '" + proveedor.getStatus_prove() + " WHERE id_prove ='" + proveedor.getId_prove() + "'";
					
			Conexion.ejecutar(tiraSQL);
		}

		
		
		
}
